1. Technical Field
The present invention relates to flash memory devices, and more particularly, to a flash memory device for determining a most significant bit (MSB) program.
2. Discussion of the Related Art
The demand for flash memory, which is a form of nonvolatile memory, is increasing. Flash memory, which is an electrically erasable and programmable nonvolatile memory, can retain data even when no power is supplied thereto.
With the development of flash memory devices and their related technology, multi level cell (MLC) technology capable of increasing the storage capacity of flash memory devices by storing two or more bits, in a single memory cell is widely used. In MLC technology, a single cell is programmed with several threshold voltages so that two or more bits can be stored in the single memory cell. This is distinguished from single level cell (SLC) technology where only one bit is stored in a single memory cell.
FIG. 1A is a graph illustrating threshold voltage distributions of single-level cells, and FIG. 1B is a graph illustrating threshold voltage distributions of multi-level cells.
Referring to FIG. 1A, when a flash memory device follows SLC technology, only one bit of data is stored in each memory cell. Thus, each memory cell is programmed with one of two states, each defined by distinct threshold voltages. The two states may be expressed as [1] and [0]. On the other hand, referring to FIG. 1B, when the flash memory device follows MLC technology, data corresponding to a plurality of bits (e.g., 2-bit data) is stored in each memory cell. Thus, each memory cell is programmed with one of four states, each defined by distinct threshold voltages. The four states may be expressed as, for example, [11], [10], [01], and [00]. When data corresponding to a plurality of bits is stored in each memory cell, a data value corresponding to each of the states of threshold voltages may vary according to the design of a memory device. For example, in FIG. 1B, four threshold voltages, in order form a lowest threshold voltage to a highest threshold voltage, correspond to data of [11], [01], [00], and [10], but the values of the data corresponding to the threshold voltages may vary according to the design of a memory device. For example, the four threshold voltages, in order from a lowest voltage to a highest voltage, may correspond to data [11], [10], [01], and [00], respectively.
When a memory cell is programmed according to MLC technology as described above, generally, a least significant bit (LSB) is programmed first and then a most significant bit (MSB) is programmed. Therefore, when a flash memory device is based on MLC technology, in performing a normal program operation, a read operation, etc. on a memory cell, a determination is made as to whether only LSB programming has been performed on the memory cell or if both LSB and MSB programming have been performed.
In the conventional art, a determination as to whether MSB programming has been executed is made in an MLC mode, by using flag data. However, this determining method may require a complicated circuit. In addition, when the distribution of a cell that stores flag data is changed because of, for example, a PE cycle and a hot temperature stress (HTS), it may be difficult to accurately determine whether MSB programming has been executed. Therefore, a technique for efficiently determining execution or non-execution of MSB programming using a simple circuit design is desired.